#include "types.h"
#include "params.h"
#include "kfunc.h"
void
main () {
    //printk ("hello");
    kmeminit (); // 初始化内存分配器
    printk ("Kernel memory allocator initialized.\n");
    kvminit (); // 初始化虚拟内存
    printk ("Virtual memory initialized.\n");
    pipeinit (); // 初始化pipe
    mfsinit (); // 初始化mfs
    printk ("MagicFS initialized.\n");
    //panic ("check point");
    consinit (); // 初始化终端
    koallocinit (); // 初始化kobj分配器
    printk ("Kernel object allocator initialized.\n");
    procinit (); // 初始化进程管理器
    trapinit (); // 初始化trap
    printk ("Trap initialized.\n");
    // elfloaderinit (); // 初始化elfloader
    //panic ("I'm not finished. so, just panic before jump to userspace.\n");
    initneo (); // 创建第一个进程并切换到用户层
}